home *** CD-ROM | disk | FTP | other *** search
/ CD World 1998 January / CD World - Ocak 1998.iso / misc / dbase55 / disk7 / extern.pak / DBSYSDRV.PRG < prev    next >
Text File  |  1996-01-05  |  2KB  |  83 lines

  1. *******************************************************************************
  2. *  PROGRAM:      dbsysdrv.prg
  3. *
  4. *  WRITTEN BY:   Borland Samples Group.
  5. *
  6. *  DATE:         1/94
  7. *
  8. *  UPDATED:      5/95
  9. *
  10. *  REVISION:     $Revision:   2.5  $
  11. *
  12. *  VERSION:      Visual dBASE
  13. *
  14. *  DESCRIPTION:  Small example that uses the dbfile.dll.
  15. *                It searches system.ini for .drv drivers loaded.
  16. *
  17. *  PARAMETERS:   None
  18. *
  19. *  CALLS:        To dbfile.dll
  20. *
  21. *  USAGE:        do dbsysdrv
  22. *
  23. *******************************************************************************
  24.  
  25.  * Be quiet
  26. set talk off
  27.  
  28.  * Check that the windows\system.ini file can be found
  29. filename = "c:\windows\system.ini"
  30. if .not. file( filename )
  31.    filename = space( 145 )
  32.    EXTERN CWORD GetWindowsDirectory( CSTRING, CINT ) krnl386.exe
  33.    namelength = GetWindowsDirectory( filename, 144 )
  34.    if namelength == 0
  35.        ? "Can't find the Windows root directory."
  36.        return
  37.    endif
  38.    filename = substr( filename, 1, namelength ) + "\system.ini"
  39.    if .not. file( filename )
  40.        ? "Can't find the windows\system.ini file."
  41.        return
  42.    endif
  43. endif
  44.  
  45.  * Initialize dbfile.dll
  46. set procedure to dbfile additive
  47. do dbfile
  48.  
  49.  * Open up and set the filter to the string wanted.
  50. f = new textfile()
  51. if .not. f.open( filename )
  52.    ? "Can't open " + filename
  53.    return
  54. endif
  55. f.fieldseparator( "." )
  56. f.filter( "drv" )
  57.  
  58.  * Find the lines with .drv at the end.
  59. do while .not. (f.eof() .or. f.error())
  60.     * Get the field count. Then get the last field.
  61.    fields = f.getrec()
  62.    str = lower( f.getfield( fields ) )
  63.  
  64.     * Is it drv? If so concatenate the rec into a line and print it.
  65.    if str = "drv" .and. "drv" = str
  66.        count = 1
  67.        line = ""
  68.        do while count <= fields
  69.            line = line + f.getfield( count )
  70.            if count < fields
  71.                line = line + "."
  72.            endif
  73.            count = count + 1
  74.        enddo
  75.        ? line
  76.    endif
  77. enddo
  78.  
  79.  * Close up.
  80. f.close()
  81. f.release()
  82.  
  83.